/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * pnfSalidaPorVencimiento.java
 *
 * Created on 09/11/2011, 12:19:55 AM
 */

package visual.Despacho;
import bentity.bePallet;
import bentity.beUbicacion;
import bentity.beUsuario;
import blogic.blLog;
import blogic.blPallet;
import blogic.blProducto;
import blogic.blUbicacion;
import java.sql.Date;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import visual.Seguridad.visualHelper;

/**
 *
 * @author luis
 */
public class pnfSalidaPorVencimiento extends javax.swing.JPanel {
    public static String VENCIMIENTO = "Vencimiento";
    private beUsuario usuario = null;

    /** Creates new form pnfSalidaPorVencimiento */
    public pnfSalidaPorVencimiento(beUsuario usuario) {
        initComponents();
        this.txtBusqUbicFila.setTransferHandler(null);
        this.txtBusqUbicPiso.setTransferHandler(null);
        this.txtBusqUbicRack.setTransferHandler(null);
        this.txtBusqUbicUbicacion.setTransferHandler(null);

        this.usuario = usuario;

        consultarUbicacionesPorFiltrosPorVencer();
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        btnEliminar = new javax.swing.JButton();
        lblTitulo = new javax.swing.JLabel();
        pnlRegistro = new javax.swing.JPanel();
        btnRestaurar = new javax.swing.JButton();
        pnlRegistro1 = new javax.swing.JPanel();
        dtcFechaVencimientoHasta = new com.toedter.calendar.JDateChooser();
        lblTipo3 = new javax.swing.JLabel();
        dtcFechaVencimientoDesde = new com.toedter.calendar.JDateChooser();
        lblTipo7 = new javax.swing.JLabel();
        pnlRegistro2 = new javax.swing.JPanel();
        btnRestaurar1 = new javax.swing.JButton();
        lblNumPisos1 = new javax.swing.JLabel();
        txtFila2 = new javax.swing.JTextField();
        txtNumPisos1 = new javax.swing.JTextField();
        lblNumUbicaciones1 = new javax.swing.JLabel();
        txtNumUbicaciones1 = new javax.swing.JTextField();
        lblFila1 = new javax.swing.JLabel();
        txtFila3 = new javax.swing.JTextField();
        lblTipo4 = new javax.swing.JLabel();
        pnlRegistro3 = new javax.swing.JPanel();
        lblTipo5 = new javax.swing.JLabel();
        dtcInscripcionDesde3 = new com.toedter.calendar.JDateChooser();
        lblTipo6 = new javax.swing.JLabel();
        dtcInscripcionDesde4 = new com.toedter.calendar.JDateChooser();
        pnlRegistro4 = new javax.swing.JPanel();
        lblBusqUbicFila1 = new javax.swing.JLabel();
        lblBusqUbicRack1 = new javax.swing.JLabel();
        lblBusqUbicPiso1 = new javax.swing.JLabel();
        txtBusqUbicPiso = new javax.swing.JTextField();
        lblBusqUbicUbicacion1 = new javax.swing.JLabel();
        txtBusqUbicUbicacion = new javax.swing.JTextField();
        txtBusqUbicRack = new javax.swing.JTextField();
        txtBusqUbicFila = new javax.swing.JTextField();
        jScrollPane1 = new javax.swing.JScrollPane();
        tblPallet = new javax.swing.JTable();
        lblTipo2 = new javax.swing.JLabel();

        btnEliminar.setBackground(new java.awt.Color(240, 235, 226));
        btnEliminar.setFont(new java.awt.Font("Dialog", 0, 12));
        btnEliminar.setForeground(new java.awt.Color(0, 0, 0));
        btnEliminar.setText("Descartar");
        btnEliminar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnEliminarActionPerformed(evt);
            }
        });

        lblTitulo.setFont(new java.awt.Font("Dialog", 0, 36));
        lblTitulo.setText("Salida de Pallet");

        pnlRegistro.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Buscar Pallet", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 0, 14))); // NOI18N
        pnlRegistro.setLayout(null);

        btnRestaurar.setBackground(new java.awt.Color(240, 235, 226));
        btnRestaurar.setFont(new java.awt.Font("Dialog", 0, 12));
        btnRestaurar.setForeground(new java.awt.Color(0, 0, 0));
        btnRestaurar.setText("Buscar");
        btnRestaurar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnRestaurarActionPerformed(evt);
            }
        });
        pnlRegistro.add(btnRestaurar);
        btnRestaurar.setBounds(280, 230, 100, 27);

        pnlRegistro1.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Fecha de Vencimiento", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 0, 14))); // NOI18N
        pnlRegistro1.setLayout(null);
        pnlRegistro1.add(dtcFechaVencimientoHasta);
        dtcFechaVencimientoHasta.setBounds(380, 30, 170, 30);

        lblTipo3.setFont(new java.awt.Font("Dialog", 0, 12));
        lblTipo3.setText("Desde");
        pnlRegistro1.add(lblTipo3);
        lblTipo3.setBounds(20, 30, 110, 30);
        pnlRegistro1.add(dtcFechaVencimientoDesde);
        dtcFechaVencimientoDesde.setBounds(70, 30, 170, 28);

        lblTipo7.setFont(new java.awt.Font("Dialog", 0, 12));
        lblTipo7.setText("hasta");
        pnlRegistro1.add(lblTipo7);
        lblTipo7.setBounds(330, 30, 110, 30);

        pnlRegistro.add(pnlRegistro1);
        pnlRegistro1.setBounds(40, 130, 600, 81);

        pnlRegistro2.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Buscar Pallet"));
        pnlRegistro2.setLayout(null);

        btnRestaurar1.setBackground(new java.awt.Color(240, 235, 226));
        btnRestaurar1.setFont(new java.awt.Font("Dialog", 0, 12));
        btnRestaurar1.setForeground(new java.awt.Color(0, 0, 0));
        btnRestaurar1.setText("Buscar");
        btnRestaurar1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnRestaurar1ActionPerformed(evt);
            }
        });
        pnlRegistro2.add(btnRestaurar1);
        btnRestaurar1.setBounds(240, 220, 100, 27);

        lblNumPisos1.setFont(new java.awt.Font("Dialog", 0, 12));
        lblNumPisos1.setText("N° Pisos*");
        pnlRegistro2.add(lblNumPisos1);
        lblNumPisos1.setBounds(300, 40, 100, 20);
        pnlRegistro2.add(txtFila2);
        txtFila2.setBounds(120, 80, 130, 28);
        pnlRegistro2.add(txtNumPisos1);
        txtNumPisos1.setBounds(420, 40, 130, 28);

        lblNumUbicaciones1.setFont(new java.awt.Font("Dialog", 0, 12));
        lblNumUbicaciones1.setText("N° Ubicaciones*");
        pnlRegistro2.add(lblNumUbicaciones1);
        lblNumUbicaciones1.setBounds(300, 90, 110, 20);
        pnlRegistro2.add(txtNumUbicaciones1);
        txtNumUbicaciones1.setBounds(420, 80, 130, 28);

        lblFila1.setFont(new java.awt.Font("Dialog", 0, 12));
        lblFila1.setText("Fila*");
        pnlRegistro2.add(lblFila1);
        lblFila1.setBounds(40, 40, 80, 30);
        pnlRegistro2.add(txtFila3);
        txtFila3.setBounds(120, 40, 130, 28);

        lblTipo4.setFont(new java.awt.Font("Dialog", 0, 12));
        lblTipo4.setText("Tipo*");
        pnlRegistro2.add(lblTipo4);
        lblTipo4.setBounds(40, 80, 110, 30);

        pnlRegistro3.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Fecha de Vencimiento"));
        pnlRegistro3.setLayout(null);

        lblTipo5.setFont(new java.awt.Font("Dialog", 0, 12));
        lblTipo5.setText("hasta");
        pnlRegistro3.add(lblTipo5);
        lblTipo5.setBounds(270, 30, 110, 30);
        pnlRegistro3.add(dtcInscripcionDesde3);
        dtcInscripcionDesde3.setBounds(330, 30, 160, 30);

        lblTipo6.setFont(new java.awt.Font("Dialog", 0, 12));
        lblTipo6.setText("Desde");
        pnlRegistro3.add(lblTipo6);
        lblTipo6.setBounds(20, 30, 110, 30);
        pnlRegistro3.add(dtcInscripcionDesde4);
        dtcInscripcionDesde4.setBounds(70, 30, 170, 28);

        pnlRegistro2.add(pnlRegistro3);
        pnlRegistro3.setBounds(40, 120, 510, 81);

        pnlRegistro.add(pnlRegistro2);
        pnlRegistro2.setBounds(0, 0, 0, 0);

        pnlRegistro4.setBorder(javax.swing.BorderFactory.createTitledBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)), "Codigo de Ubicacion", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Dialog", 0, 14))); // NOI18N
        pnlRegistro4.setLayout(null);

        lblBusqUbicFila1.setFont(new java.awt.Font("Dialog", 0, 12));
        lblBusqUbicFila1.setForeground(new java.awt.Color(0, 0, 0));
        lblBusqUbicFila1.setText("B");
        pnlRegistro4.add(lblBusqUbicFila1);
        lblBusqUbicFila1.setBounds(70, 30, 20, 20);

        lblBusqUbicRack1.setFont(new java.awt.Font("Dialog", 0, 12));
        lblBusqUbicRack1.setForeground(new java.awt.Color(0, 0, 0));
        lblBusqUbicRack1.setText("-F");
        pnlRegistro4.add(lblBusqUbicRack1);
        lblBusqUbicRack1.setBounds(160, 30, 20, 20);

        lblBusqUbicPiso1.setFont(new java.awt.Font("Dialog", 0, 12));
        lblBusqUbicPiso1.setForeground(new java.awt.Color(0, 0, 0));
        lblBusqUbicPiso1.setText("-P");
        pnlRegistro4.add(lblBusqUbicPiso1);
        lblBusqUbicPiso1.setBounds(260, 30, 20, 20);
        pnlRegistro4.add(txtBusqUbicPiso);
        txtBusqUbicPiso.setBounds(290, 30, 30, 28);

        lblBusqUbicUbicacion1.setFont(new java.awt.Font("Dialog", 0, 12));
        lblBusqUbicUbicacion1.setForeground(new java.awt.Color(0, 0, 0));
        lblBusqUbicUbicacion1.setText("-C");
        pnlRegistro4.add(lblBusqUbicUbicacion1);
        lblBusqUbicUbicacion1.setBounds(370, 30, 20, 20);
        pnlRegistro4.add(txtBusqUbicUbicacion);
        txtBusqUbicUbicacion.setBounds(400, 30, 30, 28);
        pnlRegistro4.add(txtBusqUbicRack);
        txtBusqUbicRack.setBounds(90, 30, 30, 28);
        pnlRegistro4.add(txtBusqUbicFila);
        txtBusqUbicFila.setBounds(180, 30, 30, 28);

        pnlRegistro.add(pnlRegistro4);
        pnlRegistro4.setBounds(40, 30, 610, 80);

        tblPallet.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {

            },
            new String [] {
                "CodPallet", "CodUbica", "Ubicacion", "CodProd", "Producto", "F. Vencimiento"
            }
        ) {
            boolean[] canEdit = new boolean [] {
                false, false, false, false, false, false
            };

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        tblPallet.setColumnSelectionAllowed(true);
        tblPallet.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
        tblPallet.getTableHeader().setReorderingAllowed(false);
        jScrollPane1.setViewportView(tblPallet);
        tblPallet.getColumnModel().getSelectionModel().setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);

        lblTipo2.setFont(new java.awt.Font("Dialog", 0, 14));
        lblTipo2.setText("Pallet");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(146, 146, 146)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addGap(199, 199, 199)
                        .addComponent(lblTitulo))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                        .addComponent(pnlRegistro, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(lblTipo2, javax.swing.GroupLayout.PREFERRED_SIZE, 110, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 689, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(276, 276, 276)
                        .addComponent(btnEliminar, javax.swing.GroupLayout.PREFERRED_SIZE, 110, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(203, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(29, 29, 29)
                .addComponent(lblTitulo)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(pnlRegistro, javax.swing.GroupLayout.PREFERRED_SIZE, 282, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(lblTipo2, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 160, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(btnEliminar)
                .addContainerGap(40, Short.MAX_VALUE))
        );
    }// </editor-fold>//GEN-END:initComponents

    private void btnEliminarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnEliminarActionPerformed

        if (visualHelper.mostrarPreguntaSiNo("Está seguro que desea descartar el pallet?")==JOptionPane.YES_OPTION){
            blUbicacion gestorUbicaciones = new blUbicacion();
            blProducto gestorProductos = new blProducto();
            int fila = this.tblPallet.getSelectedRow();
            ArrayList<Integer> estados = new ArrayList<Integer>();

            if (fila == -1)
                JOptionPane.showMessageDialog(this, "Debe seleccionar una ubicación.", "Información", JOptionPane.INFORMATION_MESSAGE);
            else{
                try {

                    //Se valida que se haya seleccionado una fila
                    if (this.tblPallet.getSelectedRowCount() > 1) {
                        visualHelper.mostrarMensajeAdvertencia("Debe seleccionar una sola fila");
                        return;
                    }

                    //  java.util.Date today = new java.util.Date();
    //                java.sql.Date sqlToday = new java.sql.Date(today.getTime());
    //                String fechaActual = sqlToday.toString();
    //
    //                String fecha = this.tblPallet.getValueAt(fila, 5).toString();
    //                java.sql.Date fecVencProducto = Date.valueOf(fecha.replace('/','-'));
    //
    //                if (!(fecVencProducto.before(sqlToday))){
    //                    visualHelper.mostrarMensajeError("El producto seleccionado todavia no vence");
    //                    return;
    //                }

                    estados = gestorUbicaciones.getTipoEstadoInt();

                    blPallet gestorPallets = new blPallet();
                    bePallet pallet = new bePallet();
                    pallet = gestorPallets.obtenerPalletPorId(Integer.parseInt(this.tblPallet.getValueAt(fila, 0).toString()));

                    //Se valida que solo se pueda eliminar un producto que vence dentro de los prox 7 dias o ya ha vencido
                    if (gestorProductos.obtenerProductoSiVence7Dias(pallet.getId_lote(),pallet.getIdProducto())==null){
                        visualHelper.mostrarMensajeAdvertencia("El pallet seleccionado no ha podido ser eliminado.\n"
                                + "EL producto que contiene no ha vencido, ni está proximo a vencer.");
                        return;
                    }

                    gestorUbicaciones.actualizarUbi(Integer.parseInt(this.tblPallet.getValueAt(fila, 1).toString()), Integer.parseInt(this.tblPallet.getValueAt(fila, 0).toString()), estados.get(3),pnfSalidaPorVencimiento.VENCIMIENTO);

                    gestorProductos.disminuirStock(Integer.parseInt(this.tblPallet.getValueAt(fila, 3).toString()),pallet.getCantCajas());
                    visualHelper.mostrarMensajeSatisfaccion("Se libero la ubicación");
                    String codUbicacion = this.tblPallet.getValueAt(fila, 1).toString();

                    (new blLog()).registrarLog(this.usuario.getIdUsuario(), this.usuario.getCargo(), "La ubicación con cod "+ codUbicacion + " y pallet "+pallet.getId_Pallet()+" ha sido liberada descartada por vencimiento");

                    this.consultarUbicacionesPorFiltros();
                } catch (Exception ex) {
                    Logger.getLogger(pnfSacarXIncidente.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        }

}//GEN-LAST:event_btnEliminarActionPerformed

    private void btnRestaurarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRestaurarActionPerformed
        this.consultarUbicacionesPorFiltros();
}//GEN-LAST:event_btnRestaurarActionPerformed

    private void btnRestaurar1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRestaurar1ActionPerformed
        // TODO add your handling code here:
}//GEN-LAST:event_btnRestaurar1ActionPerformed


    private void consultarUbicacionesPorFiltros(){
        try{
            String strFila = this.txtBusqUbicFila.getText();
            String strRack = this.txtBusqUbicRack.getText();
            String strPiso = this.txtBusqUbicPiso.getText();
            String strUbicacion = this.txtBusqUbicUbicacion.getText();

            String strFechaVencimientoDesde = "";
            String strFechaVencimientoHasta = "";
                      
            if (this.dtcFechaVencimientoDesde.getDate() != null)
                strFechaVencimientoDesde = (new Date(this.dtcFechaVencimientoDesde.getDate().getTime())).toString();            

            if (this.dtcFechaVencimientoHasta.getDate() != null)
                strFechaVencimientoHasta = (new Date(this.dtcFechaVencimientoHasta.getDate().getTime())).toString();

            ArrayList <beUbicacion> listaUbicaciones = new ArrayList<beUbicacion>();
            blPallet gestorUbicaciones = new blPallet();
            
            listaUbicaciones = gestorUbicaciones.obtenerUbicacionPorFechaVencimiento(strFila,strRack,strPiso,strUbicacion,strFechaVencimientoDesde, strFechaVencimientoHasta);

            DefaultTableModel dtm = (DefaultTableModel)this.getTblPallet().getModel();

            this.limpiarTabla(dtm);
            if (listaUbicaciones.size() == 0)
                JOptionPane.showMessageDialog(this, "La búsqueda no arrojó resultados.", "Información", JOptionPane.INFORMATION_MESSAGE);
            else
                this.llenarTabla(listaUbicaciones);

        }
        catch (Exception e){
            e.printStackTrace();
            visualHelper.mostrarMensajeError("Ocurrió un error en la búsqueda");
        }
    }

    private void consultarUbicacionesPorFiltrosPorVencer(){
        try{
            String strFila = "";
            String strRack = "";
            String strPiso = "";
            String strUbicacion = "";

            java.util.Date today = new java.util.Date();
            java.sql.Date sqlToday = new java.sql.Date(today.getTime());
            String fechaActual = sqlToday.toString();
            String strFechaVencimientoDesde = "";
            String strFechaVencimientoHasta = fechaActual;

            Calendar cal = Calendar.getInstance();
            cal.setTime(today);
            cal.add(Calendar.DAY_OF_YEAR, 7);
            today = cal.getTime();
            sqlToday = new java.sql.Date(today.getTime());
            fechaActual = sqlToday.toString();

            strFechaVencimientoHasta = fechaActual;

            
            ArrayList <beUbicacion> listaUbicaciones = new ArrayList<beUbicacion>();
            blPallet gestorUbicaciones = new blPallet();

            listaUbicaciones = gestorUbicaciones.obtenerUbicacionPorFechaVencimiento(strFila,strRack,strPiso,strUbicacion,strFechaVencimientoDesde, strFechaVencimientoHasta);

            DefaultTableModel dtm = (DefaultTableModel)this.getTblPallet().getModel();

            this.limpiarTabla(dtm);
            if (listaUbicaciones.size() == 0)
                JOptionPane.showMessageDialog(this, "La búsqueda no arrojó resultados.", "Información", JOptionPane.INFORMATION_MESSAGE);
            else
                this.llenarTabla(listaUbicaciones);

        }
        catch (Exception e){
            e.printStackTrace();
            visualHelper.mostrarMensajeError("Ocurrió un error en la búsqueda");
        }
    }


    
    private void llenarTabla(ArrayList<beUbicacion> listaUbicaciones) {
        DefaultTableModel dtm = (DefaultTableModel)this.getTblPallet().getModel();
        Object [] datos = new Object [9];
        for(int i=0;i<listaUbicaciones.size();i++){
            datos[0] = listaUbicaciones.get(i).getIdPallet();
            datos[1] = listaUbicaciones.get(i).getIdUbicacion();
            String cad = "B"+listaUbicaciones.get(i).getCoordenadas().getRack()+
                        "-F"+listaUbicaciones.get(i).getCoordenadas().getFila()+
                        "-P"+listaUbicaciones.get(i).getCoordenadas().getPiso()+
                        "-C"+listaUbicaciones.get(i).getCoordenadas().getUbicacion()+"";

            datos[2] = cad;
            datos[3] = listaUbicaciones.get(i).getIdProducto();
            datos[4] = listaUbicaciones.get(i).getNombProducto();
            datos[5] = listaUbicaciones.get(i).getFechaVencimiento().toString();
            dtm.addRow(datos);
        }
        this.getTblPallet().setRowSelectionAllowed(true);
        this.getTblPallet().setColumnSelectionAllowed(false);
    }

    private void limpiarTabla(DefaultTableModel dtm) {
        int numFilas = dtm.getRowCount();
        for(int i=(numFilas-1);i>=0;i--)
            dtm.removeRow(i);
    }

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnEliminar;
    private javax.swing.JButton btnRestaurar;
    private javax.swing.JButton btnRestaurar1;
    private com.toedter.calendar.JDateChooser dtcFechaVencimientoDesde;
    private com.toedter.calendar.JDateChooser dtcFechaVencimientoHasta;
    private com.toedter.calendar.JDateChooser dtcInscripcionDesde3;
    private com.toedter.calendar.JDateChooser dtcInscripcionDesde4;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JLabel lblBusqUbicFila1;
    private javax.swing.JLabel lblBusqUbicPiso1;
    private javax.swing.JLabel lblBusqUbicRack1;
    private javax.swing.JLabel lblBusqUbicUbicacion1;
    private javax.swing.JLabel lblFila1;
    private javax.swing.JLabel lblNumPisos1;
    private javax.swing.JLabel lblNumUbicaciones1;
    private javax.swing.JLabel lblTipo2;
    private javax.swing.JLabel lblTipo3;
    private javax.swing.JLabel lblTipo4;
    private javax.swing.JLabel lblTipo5;
    private javax.swing.JLabel lblTipo6;
    private javax.swing.JLabel lblTipo7;
    private javax.swing.JLabel lblTitulo;
    private javax.swing.JPanel pnlRegistro;
    private javax.swing.JPanel pnlRegistro1;
    private javax.swing.JPanel pnlRegistro2;
    private javax.swing.JPanel pnlRegistro3;
    private javax.swing.JPanel pnlRegistro4;
    private javax.swing.JTable tblPallet;
    private javax.swing.JTextField txtBusqUbicFila;
    private javax.swing.JTextField txtBusqUbicPiso;
    private javax.swing.JTextField txtBusqUbicRack;
    private javax.swing.JTextField txtBusqUbicUbicacion;
    private javax.swing.JTextField txtFila2;
    private javax.swing.JTextField txtFila3;
    private javax.swing.JTextField txtNumPisos1;
    private javax.swing.JTextField txtNumUbicaciones1;
    // End of variables declaration//GEN-END:variables

    public JTable getTblPallet() {
        return tblPallet;
    }

    public void setTblPallet(JTable tblPallet) {
        this.tblPallet = tblPallet;
    }



}
